package com.tz.dao;

import org.hibernate.Session;
import org.hibernate.Transaction;

import com.tz.bean.Order;

/**
 * 
 * OrderDao<BR>
 * 作者:Marlon  <BR>
 * 时间:2016年10月29日-下午3:04:45 <BR>
 * 邮箱:18093454447@163.com  <BR>
 * @version 1.0.0  <BR>
 * @link see:  <BR>
 */
public class OrderDao extends BaseDao {

	
	/**
	 * 保存订单
	 * 方法名：save<BR>
	 * 时间：2016年10月29日-下午3:04:53 <BR>
	 * @param order
	 * @return Order<BR>
	 * @exception <BR>
	 * @since  1.0.0
	 */
	public Order save(Order order){
		Session session = getSession();
		Transaction transaction = session.beginTransaction();
		session.save(order);
		transaction.commit();
		closeSession(session);
		return order;
	}
	
	/**
	 * 根据订单号和用户id修改订单状态
	 * 方法名：update<BR>
	 * 时间：2016年10月29日-下午3:05:08 <BR>
	 * @param orderNumber
	 * @param userId
	 * @return int<BR>
	 * @exception <BR>
	 * @since  1.0.0
	 */
	public int update(String orderNumber,Integer userId){
		Session session = getSession();
		String hql = "update Order set status = 1 where order_number = '"+orderNumber+"' and user_id = "+userId;
		Transaction transaction = session.beginTransaction();
		int count = session.createQuery(hql).executeUpdate();
		transaction.commit();
		closeSession(session);
		return count;
	}
	
	public Order get(Integer id){
		return (Order) getSession().get(Order.class, id);
	}
}
